﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;

namespace ImpactTenis.AcessoADados.ConsultasSQL
{
    public class SQL
    {
        public static string ConsultaLocalizaProduto()
        {
            return @"
                        SELECT
                            tbl_Produtos.Id AS [NumeroProduto],    
	                        tbl_Produtos.Modelo AS [Modelos],
	                        tbl_Cores.Descricao AS [Cores],
	                        tbl_Marcas.Nome AS [Marcas],
	                        tbl_Produtos.Preço AS [Precos],
	                        tbl_Tamanho.Descricao AS [Tamanho],
	                       	tbl_Produtos.[Local Estoque] AS [LocalEstoque],
	                        CASE 
		                        tbl_Produtos.IdStatusVenda WHEN '0' THEN 'DISPONIVEL'
		                        ELSE 'NÃO DISPONIVEL'
	                        END AS [StatusEstoque],
                            tbl_Produtos.Quantidade AS [Quantidade]    
                        FROM tbl_Produtos 
                        INNER JOIN tbl_Cores 
	                        ON tbl_Produtos.IdCor = tbl_Cores.Id 
                        INNER JOIN tbl_Marcas 
	                        ON tbl_Produtos.IdMarca = tbl_Marcas.Id 
                        INNER JOIN tbl_Tamanho 
	                        ON tbl_Produtos.IdTamanho = tbl_Tamanho.Id
                        WHERE tbl_Produtos.IdMarca = @IdMarca 
                        AND tbl_Produtos.IdTamanho = @IdTamanho 
                        AND tbl_Produtos.IdCor = @IdCor
                    ";
        }

        public static string ConsultaLocalizaProdutoVenda()
        {
            return @"
                    SELECT
                            tbl_Produtos.Id AS [NumeroProduto],    
	                        tbl_Produtos.Modelo AS [Modelos],
	                        tbl_Cores.Descricao AS [Cores],
	                        tbl_Marcas.Nome AS [Marcas],
	                        tbl_Produtos.Preço AS [Precos],
	                        tbl_Tamanho.Descricao AS [Tamanho],
	                       	tbl_Produtos.[Local Estoque] AS [LocalEstoque],
	                        CASE 
		                        tbl_Produtos.IdStatusVenda WHEN '0' THEN 'DISPONIVEL'
		                        ELSE 'NÃO DISPONIVEL'
	                        END AS [StatusEstoque],
                            tbl_Produtos.Quantidade AS [Quantidade]    
                        FROM tbl_Produtos 
                        INNER JOIN tbl_Cores 
	                        ON tbl_Produtos.IdCor = tbl_Cores.Id 
                        INNER JOIN tbl_Marcas 
	                        ON tbl_Produtos.IdMarca = tbl_Marcas.Id 
                        INNER JOIN tbl_Tamanho 
	                        ON tbl_Produtos.IdTamanho = tbl_Tamanho.Id
                        WHERE tbl_Produtos.Id = @NumProduto

                    ";
        }

        public static string CadastraVendasDeProduto()
        {
            return @"INSERT INTO tbl_Vendas(DataVenda,ValorProduto,IdFormaPag,ValorRecebido,Troco,IdProdutoVendido) VALUES (getdate(),@ValorProduto,@IdFormaPag,@ValorRecebido,@Troco,@IdProdutoVendido)
                        
                        UPDATE tbl_Produtos
                        SET Quantidade = Quantidade - 1
                        WHERE Id = @IdProdutoVendido
                    
                    ";
        }

        public static string CadastrarUsuario()
        {
            return @"INSERT INTO tbl_Usuario (Funcional, Senha, Nome, IdTipoUsuario) VALUES (@Funcional, @Senha, @Nome, @IdTipoUsuario)";
        }

        public static string AlterarUsuario()
        {
            return @"UPDATE tbl_Usuario SET Senha = @Senha, nome = @Nome where funcional = @Funcional";
        }

        public static string RelatorioVendas()
        {
            return @"SELECT * FROM tbl_Vendas where DataVenda Between @DataVenda AND @DataVendaFinal";
        }

        public static string RelatorioEstoque()
        {
            return @"SELECT * FROM tbl_Produtos where Quantidade > 0";
        }
    }
}
